<?php
/**
 * <https://y.st./>
 * Copyright © 2019 Alex Yst <mailto:copyright@y.st>
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <https://www.gnu.org./licenses/>.
**/

$xhtml = array(
	'<{title}>' => 'Well, the code is finished.',
	'takedown' => '2017-11-01',
	'<{body}>' => <<<END
<img src="/img/CC_BY-SA_4.0/y.st./weblog/2019/07/23.jpg" alt="A variant of hydrangea" class="framed-centred-image" width="800" height="480"/>
<section id="diet">
	<h2>Dietary intake</h2>
	<p>
		I dreamed that Cyrus opened a bottle of lime juice all over his front.
		He tried to contain it my forming a pool with his arms, but when I said I&apos;d run to get a pitcher to save most of it, he was impatient and just sort of let the pooled lime juice go.
		It was a huge waste of good juice.
		Now that I&apos;m awake though, I think the juice was wasted when he first dumped it.
		You wouldn&apos;t want to drink it after he&apos;d been holding it in his arms.
	</p>
</section>
<section id="diet">
	<h2>Dietary intake</h2>
	<p>
		For breakfast, I had a bowel of cereal.
		For each lunch and dinner, I had a soft taco.
	</p>
</section>
<section id="laser">
	<h2>Hair-removal</h2>
	<p>
		The doctor again noticed that I&apos;ve thinned down since my last appointment.
		That&apos;s a good sign.
		My improvement continues.
	</p>
	<p>
		It seems they&apos;re having trouble with a $a[USB] drive.
		It&apos;s not showing up on their computer when they plug it in.
		They&apos;re going to talk to one of their children about it again, but if they can&apos;t figure it out, they said they&apos;d email me to see if I could figure it out.
		I&apos;m curious as to what&apos;s going on.
		Could the drive be broken?
		Or maybe their computer&apos;s acting up?
	</p>
	<p>
		When they were verifying that they had my correct email address in their contacts list, I caught a glimpse of the &quot;gender&quot; field.
		They&apos;re got me listed as a girl.
		I found that a bit amusing.
		I don&apos;t think they got what I said about not being a girl or a guy.
		It&apos;s odd to me that such a field exists on the contacts form of their mobile though.
		Why would you need a reminder of the gender of your contacts?
	</p>
</section>
<section id="errands">
	<h2>Errands</h2>
	<p>
		Earlier in the month, or perhaps it was near the end of last month, my property manager sent me an email telling me not to smoke near the building, not wash my car in the parking lot, and not set off fireworks on the premises.
		I don&apos;t smoke, I don&apos;t own a motor vehicle, and I don&apos;t even like fireworks.
		They don&apos;t want me doing these things?
		Well, I was never planning to, so we&apos;re on the same page on that.
		It&apos;d be nice if the neighbours would follow those rules though, or at least the one about not smoking near the building.
		I don&apos;t like to breathe their fumes.
		But anyway, they sent it to my old email address, from before my legal name change.
		I&apos;d forgotten they even had my email address, so I didn&apos;t update it in their records.
		I don&apos;t like seeing my birth name.
		There&apos;s a reason I threw it away to begin with.
		So when that happened, I planned today to check in with their office and get that fixed, as I&apos;d be passing by said office on my way home from the $a[laser] hair-removal appointment.
	</p>
	<p>
		They also asked if my telephone number was up-to-date.
		I really should have listened to the number they said to see what one it was, but when they started asking if a telephone number was mine, they sort of lost my attention.
		No number they could possibly have would be up-to-date, because I don&apos;t even have telephone service.
		So I told them about the lack of service, and they said they&apos;d remove that from the account when they update teh email address, which they couldn&apos;t do right away do to lacking the correct form to fill out.
		They took a note though, so it&apos;ll probably happen.
		And if it doesn&apos;t, it&apos;ll be several months to years before they email me again anyway.
		I think this is the first time they&apos;ve ever emailed me after I moved in.
	</p>
	<p>
		I&apos;ve gotten three major bills paid today.
		Well, sort of.
		I paid for the $a[laser] treatment, which is my second-largest bill every month.
		I&apos;ve also gotten my rent paid, which is my highest.
		As for my tuition though, I went out and bought the money order to mail to the school, but I&apos;ll get it mailed tomorrow.
		I&apos;ve also left my bottle-redemption errand for tomorrow, as I felt like I didn&apos;t really have time, seeing as I needed to head into work.
	</p>
</section>
<section id="drudgery">
	<h2>Drudgery</h2>
	<p>
		My discussion posts for the day:
	</p>
	<blockquote>
		<p>
			How will I use what I&apos;m learning with Java?
			I&apos;m not even sure <strong>*if*</strong> I&apos;ll ever use Java.
			So far, the only thing I use Java for is school assignments.
			When I need to script something, I use $a[PHP] instead.
			(And no, I don&apos;t mean for Web scripting, I mean for any basic task in which I need to tell the computer to do something for me.
			$a[PHP] is much more than just a webpage-scripting language.)
			When I have time, I&apos;d like to learn Perl, and I might switch to using that for all my scripting needs.
			Java has a number of disadvantages that don&apos;t work well for my use case.
			First and foremost, the fact that Java methods can share a name causes the compiler to throw errors with unhelpful error messages when I forget what type a variable is or forget what type of arguments a method takes.
			The error message tells me I&apos;m calling an undefined method, which is technically true because of this obnoxious multiple-methods-can-share-a-name feature (so-called method overloading), but leaves me trying to figure out why a method I&apos;ve clearly defined earlier is somehow not defined at the point that I try to call it.
			Method overloading alone prevents me from choosing Java for any of my personal projects.
			On the off chance that I end up developing a mobile application (there&apos;s a couple applications that I&apos;d really like to have, but don&apos;t seem to have actually been written by anyone yet), I&apos;ll need to use Java, but for anything else, Java is pretty much off the table unless a boss or something specifically tells me to use Java.
		</p>
		<p>
			Secondly, most of the programming I do is to make the computer solve problems for me that would take me too long to solve myself.
			I write throwaway code to solve the problem, test it, debug it, then run once and never run it again.
			A scripting language, which skips the need to compile, really is the best tool for that sort of thing.
			Java&apos;s need to be compiled isn&apos;t a bad thing, and probably makes it run faster, but only because you compile once and run several times.
			When you compile once and run once, you lose time, not save time, as you need to specifically run the compiler as a separate process instead of having that functionality built into the interpreter.
		</p>
		<p>
			Java is a great language, don&apos;t get me wrong, but it&apos;s a language that I personally find aggravating to work with, and the benefits it provides don&apos;t apply to my own use case.
		</p>
		<p>
			Would programming help enhance one&apos;s non-programming-related career?
			Well, that entirely depends on the career.
			For example, suppose you were a system administrator.
			Being able to script tasks would be useful, if not outright vital, for your job.
			At the same time though, I wouldn&apos;t call it a programming job.
			On the other hand, not all careers are so focussed on computers at all, and programming may be of zero use for some people.
			I honestly don&apos;t know what I&apos;m going to do.
			I don&apos;t and won&apos;t write proprietary (closed source) code though, which is something that bars me form most programming jobs, because companies want to hide their code away and not let people learn from and improve it.
			If I could get a job writing free software (free as in unencumbered, not as in gratis), I would absolutely jump on the chance, but I don&apos;t think that&apos;s likely.
			By that same token, it&apos;s unlikely that programming would help me in whatever career I go with, because most companies aren&apos;t going to allow the public access to the code I write on their behalf.
			For me, it&apos;s not likely programming skills will have any impact on my career, because I won&apos;t be able to use them in a way that doesn&apos;t grossly violate my ethics.
			So for me, no, programming will not help enhance my career.
			However, I know programming is important to me in my off hours, even if not my job.
			Once I have more time, I&apos;d even like to contribute to some existing free software projects, making programming skills further useful to me outside my job.
		</p>
	</blockquote>
	<blockquote>
		<p>
			Yeah, statistics are impossible to get perfect.
			You can&apos;t measure the data from everywhere, so you have to take samples such as, as you mentioned, surveys, Web-crawling, and the like.
			You&apos;re going to get different data than someone else that tried to find the same statistics, so all statistics should be taken with a grain of salt.
		</p>
		<p>
			I agree, Java is a good language to learn to start out.
			It&apos;s got certain pitfalls, but one of its important strengths is that it runs on just about everything.
			I&apos;d be pretty frustrated if I got stuck in a course learning a language I could never use because it didn&apos;t run (or didn&apos;t run well) on my platform and the platforms I planned to work with.
			What a waste of my time that would be!
			Because Java runs on so many things, it&apos;s not just the general language concepts you learn that can be of use, but the language-specific quirks, implementations, and $a[API] as well.
		</p>
	</blockquote>
	<blockquote>
		<p>
			Callbacks aren&apos;t always used with event handlers; there are many other uses for them, and they can be passed into functions that will call them using other data before the function returns.
			However, as you mentioned, one use for them is within the context of event handlers.
			An event handler can react to an event and call the callbacks registered for use by that handler, both preventing the need for the callbacks to be event handlers instead of callbacks and preventing race conditions between these multiple event handlers for the same event.
			Like you said there can be multiple callbacks registered for use in the same circumstances, and there can also be multiple event handlers designed to handle the same event.
		</p>
	</blockquote>
	<p>
		It turns out the project for the week had one last headache in store for me.
		At least this time, it wasn&apos;t a literal one.
		Twice now this week, the project has almost given me a headache, but unlike last week&apos;s project, it never <strong>*quite*</strong> got bad enough to kick it over the edge.
		Now all the project needs is documentation in the form of comments.
		Everything else is done.
	</p>
</section>
<section id="Minetest">
	<h2>Minetest</h2>
	<img src="/img/CC_BY-SA_3.0/minetest.net./weblog/2019/07/23.png" alt="The bridge to Restless Island" class="framed-centred-image" width="1024" height="600"/>
	<p>
		I&apos;ve built the bridge out to Restless Island.
		Mostly, I&apos;m done with the place now.
		It&apos;s served its purpose in giving me starter mushrooms, and I have no further need of it.
		Speaking of which, my mushroom garden has been neglected for quite a while.
		I did some mushroom farming today, but not enough.
		When I have time, I really should work on raising my mushroom-based levels.
	</p>
</section>
END
);
